package com.grgbanking.it.system.entity;

import java.sql.Timestamp;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

/**
 * Department entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "department", catalog = "td_oa")
public class Department implements java.io.Serializable {

	// Fields

	private Integer deptId;
	private String deptName;
	private String telNo;
	private String faxNo;
	private String deptAddress;
	private String deptNo;
	private Integer deptParent;
	private String manager;
	private String assistantId;
	private String leader1;
	private String leader2;
	private String deptFunc;
	private Timestamp updateTime;
	private Integer dlevel;
	private String isOrg;
	private String orgAdmin;
	private String deptEmailAuditsIds;
	private String longDeptname;
	private Integer wxParentId;
	private Integer wxId;
	private List<Department> children;
	private List<User> users;
	private boolean leaf;

	@Id
	@GeneratedValue
	@Column(name = "DEPT_ID", unique = true, nullable = false)
	public Integer getDeptId() {
		return this.deptId;
	}

	public void setDeptId(Integer deptId) {
		this.deptId = deptId;
	}

	@Column(name = "DEPT_NAME", nullable = false, length = 50)
	public String getDeptName() {
		return this.deptName;
	}

	public void setDeptName(String deptName) {
		this.deptName = deptName;
	}

	@Column(name = "TEL_NO", nullable = false, length = 50)
	public String getTelNo() {
		return this.telNo;
	}

	public void setTelNo(String telNo) {
		this.telNo = telNo;
	}

	@Column(name = "FAX_NO", nullable = false, length = 50)
	public String getFaxNo() {
		return this.faxNo;
	}

	public void setFaxNo(String faxNo) {
		this.faxNo = faxNo;
	}

	@Column(name = "DEPT_ADDRESS", nullable = false, length = 100)
	public String getDeptAddress() {
		return this.deptAddress;
	}

	public void setDeptAddress(String deptAddress) {
		this.deptAddress = deptAddress;
	}

	@Column(name = "DEPT_NO", nullable = false, length = 200)
	public String getDeptNo() {
		return this.deptNo;
	}

	public void setDeptNo(String deptNo) {
		this.deptNo = deptNo;
	}

	@Column(name = "DEPT_PARENT", nullable = false)
	public Integer getDeptParent() {
		return this.deptParent;
	}

	public void setDeptParent(Integer deptParent) {
		this.deptParent = deptParent;
	}

	@Column(name = "MANAGER", nullable = false, length = 65535)
	public String getManager() {
		return this.manager;
	}

	public void setManager(String manager) {
		this.manager = manager;
	}

	@Column(name = "ASSISTANT_ID", nullable = false, length = 65535)
	public String getAssistantId() {
		return this.assistantId;
	}

	public void setAssistantId(String assistantId) {
		this.assistantId = assistantId;
	}

	@Column(name = "LEADER1", nullable = false, length = 65535)
	public String getLeader1() {
		return this.leader1;
	}

	public void setLeader1(String leader1) {
		this.leader1 = leader1;
	}

	@Column(name = "LEADER2", nullable = false, length = 65535)
	public String getLeader2() {
		return this.leader2;
	}

	public void setLeader2(String leader2) {
		this.leader2 = leader2;
	}

	@Column(name = "DEPT_FUNC", nullable = false, length = 65535)
	public String getDeptFunc() {
		return this.deptFunc;
	}

	public void setDeptFunc(String deptFunc) {
		this.deptFunc = deptFunc;
	}

	@Column(name = "UPDATE_TIME", nullable = false, length = 19)
	public Timestamp getUpdateTime() {
		return this.updateTime;
	}

	public void setUpdateTime(Timestamp updateTime) {
		this.updateTime = updateTime;
	}

	@Column(name = "DLEVEL", nullable = false)
	public Integer getDlevel() {
		return this.dlevel;
	}

	public void setDlevel(Integer dlevel) {
		this.dlevel = dlevel;
	}

	@Column(name = "IS_ORG", nullable = false, length = 1)
	public String getIsOrg() {
		return this.isOrg;
	}

	public void setIsOrg(String isOrg) {
		this.isOrg = isOrg;
	}

	@Column(name = "ORG_ADMIN", nullable = false, length = 200)
	public String getOrgAdmin() {
		return this.orgAdmin;
	}

	public void setOrgAdmin(String orgAdmin) {
		this.orgAdmin = orgAdmin;
	}

	@Column(name = "DEPT_EMAIL_AUDITS_IDS", nullable = false)
	public String getDeptEmailAuditsIds() {
		return this.deptEmailAuditsIds;
	}

	public void setDeptEmailAuditsIds(String deptEmailAuditsIds) {
		this.deptEmailAuditsIds = deptEmailAuditsIds;
	}

	@Column(name = "LONG_DEPTNAME", length = 65535)
	public String getLongDeptname() {
		return this.longDeptname;
	}

	public void setLongDeptname(String longDeptname) {
		this.longDeptname = longDeptname;
	}

	@Transient
	public Integer getWxParentId() {
		return wxParentId;
	}

	public void setWxParentId(Integer wxParentId) {
		this.wxParentId = wxParentId;
	}

	@Transient
	public Integer getWxId() {
		return wxId;
	}

	public void setWxId(Integer wxId) {
		this.wxId = wxId;
	}

	@Transient
	public List<Department> getChildren() {
		return children;
	}

	public void setChildren(List<Department> children) {
		this.children = children;
	}

	@Transient
	public boolean isLeaf() {
		return leaf;
	}

	public void setLeaf(boolean leaf) {
		this.leaf = leaf;
	}

	@Transient
	public List<User> getUsers() {
		return users;
	}

	public void setUsers(List<User> users) {
		this.users = users;
	}
	
	

}